<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>Test for jQuery validate() plugin</title>

    <link rel="stylesheet" media="screen" href="css/screen.css">

    <script src="../lib/jquery.js"></script>
    <script src="../dist/jquery.validate.js"></script>

    <style>
        .cmxform fieldset p label span.error {
            color: red;
        }

        form.cmxform {
            width: 30em;
        }

        form.cmxform label {
            width: auto;
            display: block;
            float: none;
        }
    </style>

    <script>
        // only for demo purposes
        $.validator.setDefaults({
            submitHandler: function () {
                alert("submitted!");
            }
        });

        $().ready(function () {
            // validate the form when it is submitted
            var validator = $("#form1").validate({
                errorPlacement: function (error, element) {
                    // Append error within linked label
                    $(element)
                            .closest("form")
                            .find("label[for='" + element.attr("id") + "']")
                            .append(error);
                },
                errorElement: "span",
                messages: {
                    user: {
                        required: " (required)",
                        minlength: " (must be at least 3 characters)"
                    },
                    password: {
                        required: " (required)",
                        minlength: " (must be between 5 and 12 characters)",
                        maxlength: " (must be between 5 and 12 characters)"
                    }
                }
            });

            $(".cancel").click(function () {
                validator.resetForm();
            });
        });
    </script>

</head>
<body>

<h1 id="banner"><a href="https://jqueryvalidation.org/">jQuery Validation Plugin</a> Demo</h1>
<div id="main">

    <p>Errors use spans placed within existing label element</p>

    <form method="get" class="cmxform" id="form1" action="">
        <fieldset>
            <legend>Login Form</legend>
            <p>
                <label for="user">Username</label>
                <input id="user" name="user" required minlength="3">
            </p>
            <p>
                <label for="password">Password</label>
                <input id="password" type="password" maxlength="12" name="password" required minlength="5">
            </p>
            <p>
                <input class="submit" type="submit" value="Login">
            </p>
        </fieldset>
    </form>

    <a href="index.html">Back to main page</a>

</div>


</body>
</html>
